//
// Copyright (c) 2024 BPer
//
#ifndef BPERH264DECODER_H
#define BPERH264DECODER_H
#include <bperutil/BPerAvType.h>
#include "BPerDecoder.h"
class BPerVideoDecoder {
public:
	BPerVideoDecoder(){}
	virtual ~BPerVideoDecoder(){}
	virtual void init()=0;
	virtual void parseRtmpHeader(uint8_t *p, int32_t pLen, int32_t *pwid,
			int32_t *phei, int32_t *pfps)=0;
	virtual int32_t decode(BPerFrame* pframe,BPerYuvType yuvtype,BPerDecoderCallback* pcallback)=0;
	int32_t m_isInit=0;
	int32_t m_uid = -1;
	int32_t m_state = 0;
protected:

private:

};

#endif // BPERH264DECODER_H
